//
//  UIView+YYClick.h
//  ocdemo
//
//  Created by JieNing.Zhang on 2023/4/4.
//  Copyright © 2023 zjn. All rights reserved.
//

#import <UIKit/UIKit.h>

typedef void(^UIViewClickBlock)(UIView *viewClicked);

@interface UIView (YYClick)
/**
 * 通过运行时，为 uiview 对象 添加一个 附属 字典
 */
@property (nonatomic, strong) NSDictionary* flagInfo;

/**
 *  清空所有子view
 */
-(void)removeAllSubviews;

/**
 *  删除当前view的所有约束
 */
- (void)loop2RemoveAllConstraints;

// 最近一次 成功的 YYViewClick 点击响应 毫秒时间戳
@property (nonatomic)double clickTMInMs;
/**
 *  增加UIView的点击事件
 */
-(void)YYViewClick:(UIViewClickBlock)handle;
/**
 *  如果当前还没有额外添加点击事件，增加UIView的点击事件
 */
-(void)YYViewClickIfNoneHandle:(UIViewClickBlock)handle;

//当前view截图
- (UIImage*)createImageWithScale:(CGFloat)scale;
- (UIImage*)createImageWithScale:(CGFloat)scale rect:(CGRect)rect;

// 为当前view 添加一个热区，热区跟随当前view中心点移动，保留 通过 YYViewClick 添加的 点击事件
-(UIView*)addHotAreaWithSameYYViewClick:(CGSize)hotAreaSize;

// 通过加入遮罩，切出圆角
// 圆角半径从 cornerRadiusArr 中取，0:左上, 1:右上, 2:左下, 3:右下
-(void)makeCornerMaskLayer:(NSArray<NSNumber *> *)cornerRadius;

// 通过响应链，找最近的 vc
-(UIViewController *)nearestVC;

//- (UIImageView *)myBlurEffectViewAdaptDark:(CGRect)rect;

@end

